package cn.ulyer.core.modules.system.service;

import cn.ulyer.common.jpa.entity.Role;
import cn.ulyer.common.jpa.service.BaseService;
import cn.ulyer.common.jpa.entity.Permission;
import cn.ulyer.core.modules.system.vo.PermissionVo;
import com.querydsl.core.types.Expression;
import com.querydsl.core.types.Predicate;
import org.springframework.lang.Nullable;

import java.util.List;
import java.util.Set;

public interface PermissionService extends BaseService<Permission,Integer> {

     List<PermissionVo> allPermissionVo(@Nullable Predicate...expression);

     long setDisable(Integer id);

     List<PermissionVo> PermissionVoByRoles(List<Role> roles, Permission.PermissionType menu);

}
